Determining a configuration of a medical robotic arm

ABSTRACT

A computer implemented method for determining a configuration of a medical robotic arm, wherein the configuration comprises a pose of the robotic arm and a position of a base of the robotic arm, comprising the steps of: acquiring treatment information data representing information about the treatment to be performed by use of the robotic arm; acquiring patient position data representing the position of a patient to be treated; and calculating the configuration from the treatment information data and the patient position data.

TECHNICAL FIELD

The present invention relates to a computer implemented method fordetermining a configuration of a medical robotic arm and to acorresponding computer program and system.

SUMMARY

Many surgical procedures involve using a medical robotic arm, forexample for carrying an instrument or an implant. A robotic armtypically has a base which is placed a particular position. The roboticarm can act in a certain work space relative to its base, wherein thework space depends on the structure of the robotic arm. A robotic armtypically comprises a plurality of arm segments, wherein two armsegments are connected via one or more joints. The entirety of all jointpositions is referred to as the pose of the robotic arm. The position ofthe free end of the robotic arm within the work space thus depends onthe pose of the robotic arm. The configuration of the robotic armcomprises the pose of the robotic arm and the position of the base ofthe robotic arm.

The performance of the robotic arm might be deteriorated in border areasof the work space. It might not be possible to reach some positions inthe work space if the robotic arm carries a heavy load and thepositioning accuracy of the robotic arm might be reduced in a borderarea. Depending on the intended use of the robotic arm, which forexample comprises the weight of the load to be carried by the roboticarm or the required accuracy, the usable work space might be smallerthan the maximum achievable work space of the robotic arm.

Space might be a limited resource during a surgical procedure, dependingon the number of persons involved in the surgical procedure and hardwareused in the surgical procedure. It is thus an object of the presentinvention to find the configuration of a medical robotic arm, such as aconfiguration heaving the smallest possible impact on the freedom of thepersons involved in the surgical procedure. The configuration can be aninitial configuration, which is a configuration of the robotic arm atthe beginning of the surgical procedure. Before assuming this initialconfiguration, the robotic arm can have another configuration, forexample if the base of the robotic arm is placed in a free space of theoperating room. In another case, the configuration can be aconfiguration during the surgical procedure.

The method, the program and the system are defined by the appendedindependent claims. Advantages, advantageous features, advantageousembodiments and advantageous aspects of the present invention aredisclosed in the following and contained in the subject-matter of thedependent claims. Different advantageous features can be combined inaccordance with the invention wherever technically expedient andfeasible. Specifically, a feature of one embodiment which has the sameor a similar function to another feature of another embodiment can beexchanged with said other feature, and a feature of one embodiment whichadds an additional function to another embodiment can in particular beadded to said other embodiment.

The present invention relates to a computer implemented method fordetermining a configuration of a medical robotic arm, wherein theconfiguration comprises a pose of the robotic arm and a position of abase of the robotic arm. The method comprises the step of acquiringtreatment information data representing information about the treatmentto be performed by use of the robotic arm. The method further comprisesthe step of acquiring patient position data representing the position ofa patient to be treated. The method still further comprises the step ofcalculating the configuration from the treatment information data andthe patient position data.

An end-effector, such as a fine-tuning unit or a hand-like unit, couldbe attached to the end of the robotic arm. In this case, theconfiguration of the robotic arm optionally further comprises theconfiguration of the end-effector.

The position of the patient, the position of the base of the robotic armand areas or positions mentioned elsewhere in this document arepreferably given with respect to the same reference, which can be acoordinate system defined with respect to an operating room. A positionis typically defined in up to three translational dimensions and up tothree rotational dimensions, and thus defines a location and analignment.

In one embodiment, the treatment information data comprises informationregarding at least one of a disease to be treated, a body part to betreated and a medical procedure to be performed on the patient. Thedisease might be identified according to the InternationalClassification of Diseases (ICD).

The information regarding a disease to be treated might further includethe location within the patient's body to be treated, regions ofinterest (ROI), organs at risk or any other diagnostic information orinformation obtained from an electronic health record (EHR) of thepatient, a Hospital Information System (HIS) or a Picture Archiving andCommunication System (PACS). A PACS can provide image data, which mightadd anatomical information like distance, size or shape of objects ororgans.

The treatment information data in combination with the patient positiondata define a desired area in space which shall be accessible by therobotic arm, and is also referred to as required work space. Theconfiguration is calculated from those data such that the robotic armcan reach this desired area. Calculating the configuration can make useof a model which describes the robotic arm in terms of possible jointpositions and supportable loads.

In one embodiment, a plurality of hypothetical base positions aretested. A hypothetical base position is selected, the reachable workspace is determined for this base position and the reachable work spaceis compared to the required work space.

The patient position data may represent the position of the patientdirectly or indirectly. A direct representation can include the positionof a patient, or the body parts to be treated, in up to six dimensions.An indirect representation may for example include the position of anoperating room table in combination with an assumption on how thepatient is positioned on the operating room table.

The treatment information data may further comprise patient informationdata representing information about the patient to be treated. Thisinformation may for example involve the sex, the weight, the body heightor the BMI of the patient. The required work space for example dependson the patient information data.

The treatment information data may further comprise imaging datarepresenting raw or processed images of the patient. It might forexample comprise a CT image, an MR image, information from fused imagedata sets, segmented objects or atlas based information or anatomicalinformation (like dimension, size or shape of objects or organs) derivedfrom the images. The required work space for example depends on theimaging data and/or the anatomical information derived therefrom.

In one embodiment, the method further comprises the step of acquiringconstraint information data and the step of transforming the constraintinformation data into spatial constraint data representing spatialconstraints for the configuration of the robotic arm. In thisembodiment, the calculation of the configuration is further based on thespatial constraint data.

The constraint information data represents at least one of people datadescribing people involved in the treatment, equipment data describingequipment used for the treatment other than the robotic arm, room datadescribing the room in which the treatment is performed and robot datadescribing properties of the robotic arm.

The people data may identify the number of persons involved in thetreatment and optionally the preferences, the department and theprofession of an involved person. Typically, involved persons mayinclude the surgeon, a scrub nurse, an anesthetist, a technician and avisitor. Each person involved in the treatment requires a particulararea in space with which the robotic arm should not interfere. A visitorcan have an assigned spectator area, which is known to the algorithm.

The equipment described by the equipment data may for example comprisean operating room table having a type, configuration and/or layout,imaging devices (for example defined by their types, geometries and/orlive position), treatment devices such as treatment beam generators, orother equipment, such as for example a sterile barrier, devices foranesthesia or holding devices for holding an object. Imaging devices canbe of any kind, including ultrasound imaging devices, microscopes orendoscopes.

The room data describes properties of the room in which the treatment isto be performed. It might include at least one of the room number, thegeometry of the room, information of fixed installations in the room,such as booms or lights, information on equipment flow, information onsterile tables and information on air flow within the room. Theequipment flow describes the movement of equipment over time, forexample for different workflow steps. Sterile tables define areas whichmust not be entered by the (non-sterile) robotic arm.

The robot data may comprise information on at least one of the type, thesize, the degrees of freedom, the footprint or the maximum payload ofthe robot. In addition or as an alternative, it may involve informationabout start positions, movement options or the current state of therobot.

The spatial constraint data does for example represent the spatialconstraints in terms of areas in space into which the robotic arm shouldnot enter. Such an area might have an associated priority, such that therobotic arm can enter areas with lower priorities if it is not possibleto fulfill all spatial constraints.

In one embodiment, transforming the constraint information data involvesretrieving the spatial constraint data corresponding to the constraintinformation data from a database. The word “database” includes allpossible sources which can assign spatial constraint data to constraintinformation data.

In one embodiment, the method determines the spatial constraintscorresponding to all provided constraint information data and combinesthem to an overall spatial constraint which describes an area into whichthe robotic arm should not intrude. The configuration is then calculatedsuch that this criterion is met. Preferably, the base of the robotic armis positioned outside the area described by the overall spatialconstraint.

The method may further comprise a step of acquiring live data, whereinthe calculation of the configuration is further based on the live data.

The live data may comprise sensor data, such as data representing atorque, a force, a speed or an acceleration of or exerted onto therobotic arm or a part of the robotic arm. This may further comprisegravity data or gyroscope data. In addition, it can comprise imagingdata, such as images output from cameras, medical imaging devices orultrasound devices. It may further comprise position data of objects,such as objects within a predetermined distance from the base of therobotic arm. The position data can for example be determined by amedical navigation or tracking system.

Cameras could monitor the movement of the OR table, a scanner, imagingdevices, treatment devices or persons in the room to generate the livedata. Ultrasound devices could monitor the proximity of the robot forcollision detection and/or avoidance with equipment, the patient and/orother people. Cameras could recognize a new workflow step, for exampleby pattern recognition or recognition of an instrument specific UDI(unique device identifier) code.

Touching the robotic arm, which hosts force or acceleration sensors,could lead to new situations and/or necessary new configurations.Touching the robotic arm can occur in an intentional way, for example bymoving and/or guiding the robot or stopping the robot, or in anunintentional way, for example by suddenly getting in its way, such thatrobot performs a security stop.

In one embodiment, the pose of the configuration is a generic defaultpose. This means that the method only calculates the position of thebase of the robotic arm. The default pose may be a central pose in whichthe free end of the robotic arm is in the center of the work space.

In one embodiment, the pose of the robotic arm is calculated such thatit is an optimum starting point from which all poses of the robotic armrequired during the treatment can be reached with the best possibleperformance of the robotic arm.

In one embodiment, the configuration of the medical robotic arm furthercomprises work space data representing a limited work space which therobotic arm is allowed to occupy. This limits the movement of therobotic arm to the limited work space, which imposes a limitation to theallowed joint positions. On the other hand, the robotic arm is notallowed to enter the space outside the limited work space. The limitedwork space and the area described by the overall spatial constraint dofor example not overlap.

The present invention further relates to a computer implemented methodfor determining the configuration of a medical robotic arm, wherein theconfiguration comprises a pose of a robotic arm and a position of a baseof the robotic arm. The method comprises the step of acquiring changedenvironment data representing a change in the environment in which therobotic arm is used and the step of calculating the configuration of therobotic arm from the changed environment data. The reference environmentcompared to which the changed environment data is defined is for examplethe environment for which the current configuration of the robotic armwas calculated.

If the environment of the robotic arm changes, it might be advantageousto adapt the configuration of the medical robotic arm accordingly.

In one embodiment, the changed environment data is acquired by a medicaltracking system and includes the position of an object tracked by themedical tracking system. The method is thus aware of the currentposition of the object and can adapt the configuration of the roboticarm accordingly. The method preferably knows or acquires the size of theobject. The method can calculate spatial constraint data representingspatial constraints caused by the position of the object, wherein thecalculation of the configuration is further based on this spatialconstraint data.

The changed environment data can include information about the beginningof a new workflow step of a workflow which uses the robotic arm. Eachworkflow step can have associated positions of people involved in thetreatment, information about equipment used in the workflow step,including the position of the equipment, and tasks to be performed inthe workflow step. This may lead to workflow step constraint informationdata, which is constraint information data associated with the workflowstep. The calculation of the robotic arm is then based on the workflowstep spatial constraint data.

The changed environment information may include movement datarepresenting the movement of a device other than the robotic arm. Duringthe treatment, a device might move. Common examples are treatment beamgenerators or imaging devices which for example move along theinferior-superior axis of the patient and/or around theinferior-superior axis of the patient. The movement of the device istypically controlled by a control unit, such that information about themovement is known and can be provided to the method. In addition oralternatively, the movement can be tracked. The movement data can forexample be used for updating the constraint information data. Thechanged environment information may be derived from the live data whichhave been explained above.

In one embodiment, the method further comprises the step of acquiringpatient position data representing the position of a patient to betreated. In this embodiment, the calculation of the configuration of therobotic arm is further based on the patient position data.

In one embodiment, the method further comprises the step of acquiringconstraint information data and the step of transforming the constraintinformation data into spatial constraint data representing spatialconstraints for the configuration of the robotic arm. In thisembodiment, the calculation of the configuration is further based on thespatial constraint data. Details of this embodiment and the constraintinformation data are the same as explained above.

In one embodiment, the configuration of the medical robotic arm furthercomprises work space data representing a limited work space which therobotic arm is allowed to occupy. Details of this embodiment are thesame as explained above.

In one embodiment, the method further comprises the step of acquiring acurrent configuration of the robotic arm, wherein the currentconfiguration of the robotic arm is used as the configuration of therobotic arm if the current configuration of the robotic arm does notinterfere with the changed environment. In other words, it is determinedwhether or not the current configuration of the robotic arm is alsosuitable for the changed environment. If this is the case, theconfiguration of the robotic arm does not have to be changed.

In one embodiment, the method further comprises the step of outputtingconfiguration change data which represents a change to be performed onthe current configuration of the robotic arm to obtain a desiredconfiguration of the robotic arm. This may for example involveoutputting a target position of the base of the robotic arm, for exampleto a human who can move the base of the robotic arm or to an automaticpositioning system. It may further involve outputting the target pose,and optionally the target configuration of an end-effector, to therobotic arm, for example to a controller which controls the robotic arm,or to a user who manipulates the robotic arm.

The present invention also involves applying the calculatedconfiguration of the robotic arm, which means to bring the robotic arminto the calculated configuration. It for example involves moving thebase of the robotic arm to the calculated position.

The present invention further relates to a program which, when runningon a computer, causes the computer to perform the method steps of atleast one of the methods described above and/or a program storage mediumon which the program is stored, in particular in a non-transitory form.

The present invention further relates to a system for determining aconfiguration of a medical robotic arm, the system comprising a computeron which the aforementioned program is stored and/or run.

The present invention has the technical effect that an ideal set-up forthe robotic arm and an optimized workflow of the robotic procedure canbe obtained.

The needed space is minimized and/or the use of available space isoptimized. For example, the robotic arm uses a position where it usesspace which is otherwise not needed, e.g. in the very corner between animaging device and the OR table hosting the patient.

Interference with the user, staff, anesthesia and patient is minimized.All medical professionals can perform their duties completely without orwith only minimal interference with the robotic arm. Tools like drillscan still be used in the intended way, but with minimal or nocompromises for the patient set-up, such as arm positions.

Collisions with other equipment like imaging devices, OR lights, airflow cabinets, sterile tables, including moving equipment, such as an ORtable changing its height or an imaging device performing a scan, can beavoided.

In addition, collisions with already performed surgical steps, forexample with a used instrument or an implant (e.g., an already implantedneedle, catheter, electrode or the like) can be avoided sincecorresponding information will be considered in future movements andpositions of the robotic arm.

The present invention allows for maximum flexibility of roboticmovements, with the robotic arm having a maximum of options to move toany new desired position. This means the best possible position duringperformance of a robotic task with respect to payload, stability andrigidity of the robot.

In addition, the risk of breaking the sterile barrier is minimized.

DEFINITIONS

The method in accordance with the invention is for example a computerimplemented method. For example, all the steps or merely some of thesteps (i.e. less than the total number of steps) of the method inaccordance with the invention can be executed by a computer (forexample, at least one computer). An embodiment of the computerimplemented method is a use of the computer for performing a dataprocessing method. The computer for example comprises at least oneprocessor and for example at least one memory in order to (technically)process the data, for example electronically and/or optically. Theprocessor being for example made of a substance or composition which isa semiconductor, for example at least partly n- and/or p-dopedsemiconductor, for example at least one of II-, III-, IV-, V-,VI-semiconductor material, for example (doped) silicon and/or galliumarsenide. The calculating steps described are for example performed by acomputer. Determining steps or calculating steps are for example stepsof determining data within the framework of the technical method, forexample within the framework of a program. A computer is for example anykind of data processing device, for example electronic data processingdevice. A computer can be a device which is generally thought of assuch, for example desktop PCs, notebooks, netbooks, etc., but can alsobe any programmable apparatus, such as for example a mobile phone or anembedded processor. A computer can for example comprise a system(network) of “sub-computers”, wherein each sub-computer represents acomputer in its own right. The term “computer” includes a cloudcomputer, for example a cloud server. The term “cloud computer” includesa cloud computer system which for example comprises a system of at leastone cloud computer and for example a plurality of operativelyinterconnected cloud computers such as a server farm. Such a cloudcomputer is preferably connected to a wide area network such as theworld wide web (WWW) and located in a so-called cloud of computers whichare all connected to the world wide web. Such an infrastructure is usedfor “cloud computing”, which describes computation, software, dataaccess and storage services which do not require the end user to knowthe physical location and/or configuration of the computer delivering aspecific service. For example, the term “cloud” is used in this respectas a metaphor for the Internet (world wide web). For example, the cloudprovides computing infrastructure as a service (IaaS). The cloudcomputer can function as a virtual host for an operating system and/ordata processing application which is used to execute the method of theinvention. The cloud computer is for example an elastic compute cloud(EC2) as provided by Amazon Web Services™. A computer for examplecomprises interfaces in order to receive or output data and/or performan analogue-to-digital conversion. The data are for example data whichrepresent physical properties and/or which are generated from technicalsignals. The technical signals are for example generated by means of(technical) detection devices (such as for example devices for detectingmarker devices) and/or (technical) analytical devices (such as forexample devices for performing imaging methods), wherein the technicalsignals are for example electrical or optical signals. The technicalsignals for example represent the data received or outputted by thecomputer. The computer is preferably operatively coupled to a displaydevice which allows information outputted by the computer to bedisplayed, for example to a user. One example of a display device is anaugmented reality device (also referred to as augmented reality glasses)which can be used as “goggles” for navigating. A specific example ofsuch augmented reality glasses is Google Glass (a trademark of Google,Inc.). An augmented reality device can be used both to input informationinto the computer by user interaction and to display informationoutputted by the computer. Another example of a display device would bea standard computer monitor comprising for example a liquid crystaldisplay operatively coupled to the computer for receiving displaycontrol data from the computer for generating signals used to displayimage information content on the display device. A specific embodimentof such a computer monitor is a digital lightbox. The monitor may alsobe the monitor of a portable, for example handheld, device such as asmart phone or personal digital assistant or digital media player.

The expression “acquiring data” for example encompasses (within theframework of a computer implemented method) the scenario in which thedata are determined by the computer implemented method or program.Determining data for example encompasses measuring physical quantitiesand transforming the measured values into data, for example digitaldata, and/or computing the data by means of a computer and for examplewithin the framework of the method in accordance with the invention. Themeaning of “acquiring data” also for example encompasses the scenario inwhich the data are received or retrieved by the computer implementedmethod or program, for example from another program, a previous methodstep or a data storage medium, for example for further processing by thecomputer implemented method or program. The expression “acquiring data”can therefore also for example mean waiting to receive data and/orreceiving the data. The received data can for example be inputted via aninterface. The expression “acquiring data” can also mean that thecomputer implemented method or program performs steps in order to(actively) receive or retrieve the data from a data source, for instancea data storage medium (such as for example a ROM, RAM, database, harddrive, etc.), or via the interface (for instance, from another computeror a network). The data acquired by the disclosed method or device,respectively, may be acquired from a database located in a data storagedevice which is operably to a computer for data transfer between thedatabase and the computer, for example from the database to thecomputer. The computer acquires the data for use as an input for stepsof determining data. The determined data can be output again to the sameor another database to be stored for later use. The database or databaseused for implementing the disclosed method can be located on networkdata storage device or a network server (for example, a cloud datastorage device or a cloud server) or a local data storage device (suchas a mass storage device operably connected to at least one computerexecuting the disclosed method). The data can be made “ready for use” byperforming an additional step before the acquiring step. In accordancewith this additional step, the data are generated in order to beacquired. The data are for example detected or captured (for example byan analytical device). Alternatively or additionally, the data areinputted in accordance with the additional step, for instance viainterfaces. The data generated can for example be inputted (for instanceinto the computer). In accordance with the additional step (whichprecedes the acquiring step), the data can also be provided byperforming the additional step of storing the data in a data storagemedium (such as for example a ROM, RAM, CD and/or hard drive), such thatthey are ready for use within the framework of the method or program inaccordance with the invention. The step of “acquiring data” cantherefore also involve commanding a device to obtain and/or provide thedata to be acquired. In particular, the acquiring step does not involvean invasive step which would represent a substantial physicalinterference with the body, requiring professional medical expertise tobe carried out and entailing a substantial health risk even when carriedout with the required professional care and expertise. In particular,the step of acquiring data, for example determining data, does notinvolve a surgical step and in particular does not involve a step oftreating a human or animal body using surgery or therapy. In order todistinguish the different data used by the present method, the data aredenoted (i.e. referred to) as “XY data” and the like and are defined interms of the information which they describe, which is then preferablyreferred to as “XY information” and the like.

The invention also relates to a program which, when running on acomputer, causes the computer to perform one or more or all of themethod steps described herein and/or to a program storage medium onwhich the program is stored (in particular in a non-transitory form)and/or to a computer comprising said program storage medium and/or to a(physical, for example electrical, for example technically generated)signal wave, for example a digital signal wave, carrying informationwhich represents the program, for example the aforementioned program,which for example comprises code means which are adapted to perform anyor all of the method steps described herein.

Within the framework of the invention, computer program elements can beembodied by hardware and/or software (this includes firmware, residentsoftware, micro-code, etc.). Within the framework of the invention,computer program elements can take the form of a computer programproduct which can be embodied by a computer-usable, for examplecomputer-readable data storage medium comprising computer-usable, forexample computer-readable program instructions, “code” or a “computerprogram” embodied in said data storage medium for use on or inconnection with the instruction-executing system. Such a system can be acomputer; a computer can be a data processing device comprising meansfor executing the computer program elements and/or the program inaccordance with the invention, for example a data processing devicecomprising a digital processor (central processing unit or CPU) whichexecutes the computer program elements, and optionally a volatile memory(for example a random access memory or RAM) for storing data used forand/or produced by executing the computer program elements. Within theframework of the present invention, a computer-usable, for examplecomputer-readable data storage medium can be any data storage mediumwhich can include, store, communicate, propagate or transport theprogram for use on or in connection with the instruction-executingsystem, apparatus or device. The computer-usable, for examplecomputer-readable data storage medium can for example be, but is notlimited to, an electronic, magnetic, optical, electromagnetic, infraredor semiconductor system, apparatus or device or a medium of propagationsuch as for example the Internet. The computer-usable orcomputer-readable data storage medium could even for example be paper oranother suitable medium onto which the program is printed, since theprogram could be electronically captured, for example by opticallyscanning the paper or other suitable medium, and then compiled,interpreted or otherwise processed in a suitable manner. The datastorage medium is preferably a non-volatile data storage medium. Thecomputer program product and any software and/or hardware described hereform the various means for performing the functions of the invention inthe example embodiments. The computer and/or data processing device canfor example include a guidance information device which includes meansfor outputting guidance information. The guidance information can beoutputted, for example to a user, visually by a visual indicating means(for example, a monitor and/or a lamp) and/or acoustically by anacoustic indicating means (for example, a loudspeaker and/or a digitalspeech output device) and/or tactilely by a tactile indicating means(for example, a vibrating element or a vibration element incorporatedinto an instrument). For the purpose of this document, a computer is atechnical computer which for example comprises technical, for exampletangible components, for example mechanical and/or electroniccomponents. Any device mentioned as such in this document is a technicaland for example tangible device.

It is the function of a marker to be detected by a marker detectiondevice (for example, a camera or an ultrasound receiver or analyticaldevices such as CT or MRI devices) in such a way that its spatialposition (i.e. its spatial location and/or alignment) can beascertained. The detection device is for example part of a navigationsystem. The markers can be active markers. An active marker can forexample emit electromagnetic radiation and/or waves which can be in theinfrared, visible and/or ultraviolet spectral range. A marker can alsohowever be passive, i.e. can for example reflect electromagneticradiation in the infrared, visible and/or ultraviolet spectral range orcan block x-ray radiation. To this end, the marker can be provided witha surface which has corresponding reflective properties or can be madeof metal in order to block the x-ray radiation. It is also possible fora marker to reflect and/or emit electromagnetic radiation and/or wavesin the radio frequency range or at ultrasound wavelengths. A markerpreferably has a spherical and/or spheroid shape and can therefore bereferred to as a marker sphere; markers can however also exhibit acornered, for example cubic, shape.

A marker device can for example be a reference star or a pointer or asingle marker or a plurality of (individual) markers which are thenpreferably in a predetermined spatial relationship. A marker devicecomprises one, two, three or more markers, wherein two or more suchmarkers are in a predetermined spatial relationship. This predeterminedspatial relationship is for example known to a navigation system and isfor example stored in a computer of the navigation system.

A navigation system, such as a surgical navigation system, is understoodto mean a system which can comprise: at least one marker device; atransmitter which emits electromagnetic waves and/or radiation and/orultrasound waves; a receiver which receives electromagnetic waves and/orradiation and/or ultrasound waves; and an electronic data processingdevice which is connected to the receiver and/or the transmitter,wherein the data processing device (for example, a computer) for examplecomprises a processor (CPU) and a working memory and advantageously anindicating device for issuing an indication signal (for example, avisual indicating device such as a monitor and/or an audio indicatingdevice such as a loudspeaker and/or a tactile indicating device such asa vibrator) and a permanent data memory, wherein the data processingdevice processes navigation data forwarded to it by the receiver and canadvantageously output guidance information to a user via the indicatingdevice. The navigation data can be stored in the permanent data memoryand for example compared with data stored in said memory beforehand.

Preferably, atlas data is acquired which describes (for example defines,more particularly represents and/or is) a general three-dimensionalshape of the anatomical body part. The atlas data therefore representsan atlas of the anatomical body part. An atlas typically consists of aplurality of generic models of objects, wherein the generic models ofthe objects together form a complex structure. For example, the atlasconstitutes a statistical model of a patient's body (for example, a partof the body) which has been generated from anatomic information gatheredfrom a plurality of human bodies, for example from medical image datacontaining images of such human bodies. In principle, the atlas datatherefore represents the result of a statistical analysis of suchmedical image data for a plurality of human bodies. This result can beoutput as an image—the atlas data therefore contains or is comparable tomedical image data. Such a comparison can be carried out for example byapplying an image fusion algorithm which conducts an image fusionbetween the atlas data and the medical image data. The result of thecomparison can be a measure of similarity between the atlas data and themedical image data.

The human bodies, the anatomy of which serves as an input for generatingthe atlas data, advantageously share a common feature such as at leastone of gender, age, ethnicity, body measurements (e.g. size and/or mass)and pathologic state. The anatomic information describes for example theanatomy of the human bodies and is extracted for example from medicalimage information about the human bodies. The atlas of a femur, forexample, can comprise the head, the neck, the body, the greatertrochanter, the lesser trochanter and the lower extremity as objectswhich together make up the complete structure. The atlas of a brain, forexample, can comprise the telencephalon, the cerebellum, thediencephalon, the pons, the mesencephalon and the medulla as the objectswhich together make up the complex structure. One application of such anatlas is in the segmentation of medical images, in which the atlas ismatched to medical image data, and the image data are compared with thematched atlas in order to assign a point (a pixel or voxel) of the imagedata to an object of the matched atlas, thereby segmenting the imagedata into objects.

In particular, the invention does not involve or in particular compriseor encompass an invasive step which would represent a substantialphysical interference with the body requiring professional medicalexpertise to be carried out and entailing a substantial health risk evenwhen carried out with the required professional care and expertise. Forexample, the invention does not comprise a step of positioning a medicalimplant in order to fasten it to an anatomical structure or a step offastening the medical implant to the anatomical structure or a step ofpreparing the anatomical structure for having the medical implantfastened to it. More particularly, the invention does not involve or inparticular comprise or encompass any surgical or therapeutic activity.The invention is instead directed as applicable to positioning a toolrelative to the medical implant, which may be outside the patient'sbody. For this reason alone, no surgical or therapeutic activity and inparticular no surgical or therapeutic step is necessitated or implied bycarrying out the invention.

The present invention can be used for any robotic solution, for examplefor neurosurgical, spinal, or further procedures, which imply the use ofa robotic arm and optionally an end-effector. Examples are stereotacticprocedures like biopsies, DBS, SEEG, or Shunts or spinal procedures likek-wires, pedicle screws, pain management or biopsies. The inventionimproves set-up and workflow when using a robotic solution,automatically proposing and/or defining an ideal configuration and/oradapting and changing this optimal configuration over time, for examplewhen constraints change, new workflow steps start, etc. The procedurebecomes faster, more intuitive, less error prone, less tiresome or lessshaky and has improved repeatability.

BRIEF DESCRIPTION OF DRAWINGS

In the following, the invention is described with reference to theenclosed figures which represent preferred embodiments of the invention.The scope of the invention is not however limited to the specificfeatures disclosed in the figures, which show:

FIG. 1 two different configurations of a robotic arm;

FIG. 2 a scenario in which the present invention is used;

FIG. 3 a schematic overview of the present invention;

FIG. 4 a table comprising spatial constraint data and

FIG. 5 a system according to the present invention.

DETAILED DESCRIPTION

FIG. 1 shows two configurations of a robotic arm 1 in an exemplaryscenario. This scenario relates to a head surgery, wherein a head of apatient P1 is to be treated. The patient P1 is lying on an operatingroom table 2. Involved in the treatment is a surgeon P2, a nurse P3 andan anesthetist P4. Further provided is an imaging unit 3, which is forexample an MR imaging unit, and a sterile barrier 4, which separates asterile area from a non-sterile area.

The medical robotic arm 1 comprises a base 1 a and a plurality ofsegments, wherein two adjacent segments are connected via at least onejoint. One end is attached to the base 1 a, for example via at least onejoint, and the other end, which is also referred to as a free end, canmove in space depending on the joint positions, which represent thepositions of the joints between the segments and is also referred to aspose of the robotic arm 1. The combination of the pose of the roboticarm and the position of the base 1 a of the robotic arm is called theconfiguration of the robotic arm

Each of the persons P2 to P4 involved in the treatment and of theequipment (imaging device 3 and sterile barrier 4) requires a particularspatial area during the treatment. The required areas may vary fordifferent workflow steps of the treatment. It is therefore essential todetermine a suitable configuration of the robotic arm 1, in particular aproper position of the base 1 a of the robotic arm 1. The configurationof the robotic arm 1 might be different for two or more differentworkflow steps, but could also be the same for all workflow steps.

The left and right parts of FIG. 1 show different positions of the base1 a of the robotic arm 1, and therefore different configurations of therobotic arm 1. For the configuration shown in the left part of FIG. 1,the position of the base 1 a of the robotic arm 1 is such that allpersons and parts of the equipment have enough room for performing thetreatment. For the position of the base 1 a of the robotic arm 1 shownin the right part of FIG. 1, to the contrary, the freedom of the surgeonP2 and the nurse P3 is limited by the robotic arm 1, which can easilylead to deteriorated results of the treatment. The configuration of therobotic arm 1 in the left part of FIG. 1 is therefore favorable over theconfiguration of the robotic arm 1 shown in the right part of FIG. 1.

FIG. 2 shows scenarios similar to the one shown in FIG. 1 for twodifferent workflow steps of a treatment of the patient P1. In theworkflow step shown in the left part of FIG. 1, the free end of therobotic arm 1 a is near the head of the patient P1, for example forholding a medical instrument or a medical tool.

In the workflow step shown in the right part of FIG. 2, the free end ofthe robotic arm 1 is retracted and the imaging device 3 is being usedfor imaging the head of the patient P1. During the imaging process, theimaging device 3 moves along the inferior-superior axis of the patientP1 as indicated by the double arrow. Since the imaging device 3 emitsx-ray radiation during the imaging process, the persons P2 to P4 arestanding behind protective shields 5.

FIG. 3 gives a schematic overview of the data which are processed andoutput by the algorithm for calculating the configuration of the roboticarm 1 according to the present invention.

On the input side, there are treatment information data, people data,equipment data, room data, robot data, live data and patient positiondata. The people data, equipment data, room data and robot data can besummarized as constraint information data. They define spatialconstraints on the configurations of the robotic arm 1. The constraintinformation data are optional, but advantageous.

The treatment information data comprises at least one of the diagnosis,the disease, disease classification, diagnostic information, location ofthe treatment, regions of interest, organs at risk, medical images andprocessed images.

The people data comprises information on at least one person involved inthe treatment, such as the patient, a surgeon, a scrub-nurse, and ananesthetist, including the department, profession and personalpreferences of the person. Patient data might include patient weight(which might cause potential bending of the OR table), patient position(for example prone versus supine versus lateral) or equipment effectingpatient access (such as cables, tubes, stickers or holders).

The equipment data comprises at least one of the operating room tabletype, layout, height, operating room lights, devices for anesthesia,imaging devices, treatment devices and tools used for the treatment.

The room data comprises at least one of room number, room geometries,fixed installations, such as booms or lights, equipment flow, steriletables or air flow.

The robot data comprises at least one of type, size, footprint, maximumpayload, work space, start options, movement options, and current stateof the robotic arm 1. Start options might indicate a possible initialposition like a park position, a position in the middle of the treatmentvolume or a position in the middle of the achievable work space of therobot (avoiding border positions which affect maximum load and/oraccuracy).

Live data comprises data from sensors, such as torque, force, speed,acceleration, gravity and gyroscopic information, and from other devicessuch as imaging devices and orientation devices, like cameras orultrasound devices.

The patient position data represent the position of the patient P1 to betreated.

The treatment information data basically describes the part of thepatient P1 to be treated, for example relative to a patient coordinatesystem. Since the position of the patient P1 is known from the patientposition data, which defines the position of the patient in spacerelative to a reference, such as a reference system associated with theoperating room, the spatial area to be treated is known or can becalculated in this reference system. The patient position data mayderived from the treatment information data and the position of theoperating room table 2 in the reference system, for example if theposition of the patient P1 on the operating room table 2 is known or canbe estimated.

The output of the algorithm comprises the configuration of the roboticarm 1. Optional outputs are potential movement data and/or user optionsdata. As mentioned above, the configuration comprises a pose of therobotic arm 1 and a position of the base of 1 a of the robotic arm 1.However, the pose of the robotic arm 1 might be a default pose, suchthat the algorithm only calculates the position of the base 1 a of therobotic arm. User options could be a manual movement of the robot, forexample if the robot has 7 degrees of freedom and there is a variety ofpossible configurations. Another user option could be that the robotbuilds a boundary box, in which all robot positions would be good, butthe user can select (within the box) the final position. In thisexample, the algorithm allows a multitude of good or even idealpositions within the box. Another user option could be to either movethe base or to move the arm to achieve the desired, good or idealposition or to combine the base position and the arm pose in a way toachieve the best configuration calculated by the algorithm.

The potential movement data describe potential movement options thatminimize interference of the robotic arm 1 with the patient P1 otherpersons P2 to P4, equipment 3 and 4 and further procedure steps of thetreatment. They do for example describe the transition from one pose toanother. A controller of the robotic arm 1 is then not free to determinethe transition, because this could lead to a violation of a constrainedspace. The transition is instead provided to the controller.

The overview of FIG. 3 further comprises different loops connecting theoutput of the algorithm to the input of the algorithm. The first loop isthe live data loop, which provides updated live data to the algorithm.

A second loop is a procedure loop which indicates changed environmentdata to the algorithm. The changed environment data represents a changein the environment in which the robotic arm 1 is used. This may compriseat least one of information on already performed workflow steps of thetreatment, new layouts, new positions of persons or equipment involvedin the treatment and other constraints. New layouts can refer topotential repositioning of the patient during the surgical procedure,leading to a new layout of the surgery. In an abdominal case forexample, access could be first through ports in the stomach wall,whereas later on access is through the colon. New layouts can furtherdescribe how equipment could be moved to a new position or could beremoved as it is not needed anymore, leading to increased space for therobot. New layouts can still further describe that an additional surgeonenters the procedure for a later and/or more complex step,

The user interaction loop provides user interaction data to thealgorithm. The user interaction data may comprise at least one ofoptions selected by the user, options confirmed by a user or informationindicating that the user ignores or overrides the calculatedconfiguration of the robotic arm 1. The user could for example use theadvantage of a robot with 7 degrees of freedom to select the best optionin case more than one option exists, could consider constraints notpresent in the algorithm or could react to unforeseen situations,complications or life threatening conditions, for example by abandoningthe case, removing the robot, changing the planned treatment or addingnew unknown equipment.

With the feedback loops described above, it is possible to update aconfiguration of the robotic arm 1 depending on any changes occurring inthe environment or the scenario in which the robotic arm 1 is used.

The present invention also involves to bring the robotic arm 1 into thecalculated configuration, for example by relocating the base 1 a of therobotic arm 1 or providing the configuration to a controller of therobotic arm 1, which controls the robotic arm 1 to assume the posecomprised in the configuration.

FIG. 4 shows a table which comprises spatial constraint data for theconfiguration of the robotic arm 1 depending on treatment informationdata and constraint information data. FIG. 4 also assigns a priority toeach spatial constraint data item. FIG. 4 only shows a part of the wholetable.

In the example shown in FIG. 4, the treatment information data indicatesa head surgery. For the head surgery, the table comprises a plurality ofentries for different constraint information data. Spatial constraintdata and a priority are assigned to each item of the constraintinformation data. In the present embodiment, the spatial constraint datadescribe a cuboid defined by a position, which is given by threecoordinates (X, Y, Z), an orientation, which is given three angles (α,β, γ), and a size given by three length values (Lx, Ly, Lz). However,the spatial constraint data may describe a spatial area of any othershape and/or by any other suitable parameters.

In the table, different spatial constraint data are defined for asurgeon, a nurse and an anesthetist. In addition, spatial constraintdata are defined for an operating room table, a sterile barrier and animaging device.

FIG. 5 schematically shows a system 6 for carrying out the presentinvention. The system 6 comprises a computer 7 connected to an inputunit 11 and an output unit 12. The input unit 11 can be any suitableinput unit, such a mouse, a keyboard, a touch screen or any otherman-machine interface. The output unit 12 can be any suitable outputunit such as a monitor or a projector.

The computer 7 comprises a central processing unit 8 connected to aninterface 9 and a memory unit 10. Via the interface 9, the centralprocessing unit 8 can acquire data, such as the treatment informationdata, the constraint information data and the live data. The memory unit10 can store working data, such as the acquired data, and program datawhich implements the method according to the present invention.

In one embodiment, the central processing unit 8 acquires all availableinput data, such as the treatment information data, the patient positiondata and constraint information data. The central processing unit 8 thenaccesses a table like the one shown in FIG. 4 to determine spatialconstraint data and corresponding priorities depending on the treatmentinformation data and the constraint information data. The centralprocessing unit 8 then combines the obtained spatial constraint data tocalculate an overall spatial area into which the robotic arm 1 shall notenter. The central processing unit 8 then calculates the configurationof the robotic arm 1 from the treatment information data, the patientposition data and the combined spatial area into which the robotic arm 1shall not enter.

If there is no suitable configuration for the robotic arm 1 under thegiven conditions, the central processing unit 8 repeats the process ofcalculating the configuration, but ignores one or more spatialconstraint data with the lowest priority.

In another embodiment, the central processing unit 8 acquires changedenvironment data. In the present example, the changed environments dataindicates a workflow step or a change in the workflow step, such as fromthe workflow step shown in the left part of FIG. 2 to the workflow stepshown in the right part of FIG. 2, and live data. The changedenvironment data indicates that the imaging unit 3 is used for imagingthe head of the patient P1, which includes a movement of an imagingdevice 3 along the inferior-superior axis of the patient P1. Thisimplies changed spatial constraint data corresponding to the imagingdevice 3, such that the configuration of the robotic arm 1 is to beupdated.

The central processing unit 8 calculates the (updated) configuration ofthe robotic arm 1 from the changed environment data. The calculation canfurther be based on at least one of constraint information data, patientposition data and the current configuration of the robotic arm. In theexample shown in FIG. 2, the position of the base of the robotic arm 1can be maintained, while the pose of the robotic arm 1 has to be changedin order to free the space required for the movement of the imagingdevice 3.

Further examples include that the changed environment data indicateschanges in the constraint information data. The computer 7 is connectedto a medical tracking system 13 via the interface 9. The medicaltracking system 13 then tracks the position of an object, for example bydetecting a marker device attached to the object. If it detects a changein the position of the object, it generates corresponding changedenvironment data which is acquired by the central processing unit 8 andused for calculating the configuration of the robotic arm 1.

1.-5. (canceled)
 6. A computer implemented method for determining a configuration of a medical robotic arm, the configuration of the medical robotic arm comprising a pose of the medical robotic arm and a position of a base of the medical robotic arm, the method comprising: acquiring changed environment data representing a change in an environment in which the medical robotic arm is used; and calculating the configuration of the medical robotic arm based on the changed environment data.
 7. The method of claim 6, further comprising; acquiring constraint information data representing at least one of people data describing persons involved in a treatment, equipment data describing equipment used for the treatment other than the medical robotic arm, room data describing a room in which the treatment is performed and robot data describing properties of the medical robotic arm; and transforming the constraint information data into spatial constraint data representing spatial constraints for the configuration of the medical robotic arm, wherein the calculation of the configuration of the medical robotic arm is further based on the spatial constraint data.
 8. The method of claim 6, further comprising acquiring patient position data representing a position of an associated patient , wherein the calculation of the configuration of the medical robotic arm is further based on the patient position data.
 9. The method of claim 6, further comprising acquiring a current configuration of the medical robotic arm, wherein the current configuration of the medical robotic arm is used as the configuration of the medical robotic arm if when the current configuration of the medical robotic arm does not interfere with the change in the environment.
 10. The method of claim 6, wherein the changed environment data is acquired from a medical tracking system and includes the position of an object tracked by the medical tracking system.
 11. The method of claim 6, wherein the changed environment data includes information about beginning a new workflow step of a workflow using the medical robotic arm.
 12. The method of claim 6, wherein the changed environment data includes movement data representing a movement of a device other than the medical robotic arm.
 13. The method of claim 6, wherein the configuration of the medical robotic arm further comprises work space data representing a work space that the medical robotic arm is allowed to occupy.
 14. A non-transitory computer readable storage medium storing a program for determining a configuration of a medical robotic arm, the configuration of the medical robotic arm comprising a pose of the medical robotic arm and a position of a base of the medical robotic arm, the computer program, which, when running on a computer, or loaded onto the computer, causes the computer to: acquire changed environment data representing a change in an environment in which the medical robotic arm is used; and calculate the configuration of the medical robotic arm based on the changed environment data.
 15. A system for determining a configuration of a medical robotic arm, the configuration of the medical robotic arm comprising a pose of the medical robotic arm and a position of a base of the medical robotic arm, the system comprising: a medical robotic arm; and a computer configured to: acquire changed environment data representing a change in an environment in which the medical robotic arm is used; and calculate the configuration of the medical robotic arm based on the changed environment data.
 16. The system according to claim 15, wherein the computer is further configured to: acquire constraint information data representing at least one of people data describing persons involved in a treatment, equipment data describing equipment used for the treatment other than the medical robotic arm, room data describing a room in which the treatment is performed and robot data describing properties of the medical robotic arm; and transform the constraint information data into spatial constraint data representing spatial constraints for the configuration of the medical robotic arm, wherein the calculation of the configuration of the medical robotic arm is further based on the spatial constraint data.
 17. The system according to claim 15, wherein the computer is further configured to acquire patient position data representing a position of an associated patient, wherein the calculation of the configuration of the medical robotic arm is further based on the patient position data.
 18. The system according to claim 15, wherein the computer is further configured to acquire a current configuration of the medical robotic arm, wherein the current configuration of the medical robotic arm is used as the configuration of the medical robotic arm when the current configuration of the medical robotic arm does not interfere with the change in the environment.
 19. The system according to claim 15, further comprising: a medical tracking system, wherein the changed environment data is acquired from the medical tracking system and includes the position of an object tracked by the medical tracking system.
 20. The system according to claim 15, wherein the changed environment data includes information about beginning a new workflow step of a workflow using the medical robotic arm.
 21. The system according to claim 15, further comprising: a device other than the medical robotic arm, wherein the changed environment data includes movement data representing a movement of the device other than the medical robotic arm.
 22. The system according to claim 15, wherein the configuration of the medical robotic arm further comprises work space data representing a work space that the medical robotic arm is allowed to occupy.
 23. The system according to claim 15, wherein the position of the base of the medical robotic arm moves to a calculated position based on the calculated configuration of the medical robotic arm.
 24. The method according to claim 6, further comprising: acquiring treatment information data representing information about a treatment to be performed on an associated patient by use of the medical robotic arm, wherein the calculating the configuration of the medical robotic arm is based on the changed environment data and the treatment information data.
 25. The system according to claim 15, wherein the computer is further configured to: acquire treatment information data representing information about a treatment to be performed on an associated patient by use of the medical robotic arm, and calculate the configuration of the medical robotic arm based on the changed environment data and the treatment information data. 